

package cn.shengchao.examstar.share.acl.ports.repositories;

import cn.shengchao.examstar.share.domain.entity.ShareLink;
import cn.shengchao.examstar.share.domain.valobj.User;

import java.util.Optional;

public interface IShareLinkRepository {
    void save(ShareLink shareLink);

    Optional<ShareLink> getShareLinkByProductIdAndShareUserId(Long productId, Long userId);

    Optional<ShareLink> getShareLinkByShareCode(String shareCode);

    void addLog(ShareLink shareLink, User clickUser);
}
